Always bind dom0 virqs to vcpu 0.
authorcl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Wed, 7 Sep 2005 16:50:55 +0000 (16:50 +0000)
committercl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Wed, 7 Sep 2005 16:50:55 +0000 (16:50 +0000)
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
xen/common/event_channel.c

index 007c0f279b80628ed909ddbb28b0629d80dde139..5f6cafc87a658225a7296ed9a1bb355b07ae2b24 100644 (file)
@@ -251,6 +251,9 @@ static long evtchn_bind_virq(evtchn_bind_virq_t *bind)
     if ( virq >= ARRAY_SIZE(v->virq_to_evtchn) )
         return -EINVAL;
 
+    if ( d->domain_id == 0 && virq >= VIRQ_CONSOLE )
+        v = d->vcpu[0];
+
     spin_lock(&d->evtchn_lock);
 
     /*
@@ -271,6 +274,7 @@ static long evtchn_bind_virq(evtchn_bind_virq_t *bind)
  out:
     spin_unlock(&d->evtchn_lock);
 
+    printk("evtchn_bind_virq %d port %d\n", virq, port);
     if ( port < 0 )
         return port;